Data is transmitted over the Internet in the form of packets. When a voice signal is transmitted over the internet the gateways operate in what is called “audio mode”. In audio mode, the continuous voice signal is divided into packets, the packets are transmitted over the Internet, and at the receiving end, the packets are again assembled into a continuous voice signal. Since the time required for packets to travel over the internet is variable, the gateway at the receiving end includes a play-out buffer which receives and stores packets for a small interval. By storing received packets for a short interval, the play-out buffer provides a better opportunity for the system to assemble the packets in the correct order.
Setting the length of the play-out buffer involves a tradeoff between setting the delay too long or too short. If the play-out buffer is too long, it will introduce too much latency which is annoying in a telephone conversation, on the other hand, if the length of the play-out buffer is too short too many packets will be missed. Generally the length of the play-out buffer is set adaptively such that the length of the buffer is dependent upon the characteristics of the network at each particular instant in time. There is a large amount of technical literature devoted to various techniques for making the length of the play-out buffer adaptive.
When data from a modem or fax is transmitted over the Internet, the data is generally transmitted as Voice Band Data (VBD). When a gateway detects signals from a modem or fax, the gateway switches to VBD mode.
When a gateway is operating in VBD mode, the play-out buffer is typically set to a relatively long value (for example, a value exceeding 100 ms). The reason for this is that VBD is more tolerant to delay than is voice data; however, VBD is less tolerant of missed packets than is voice data.
When a modem (or fax) places a call to a second modem (or fax) the routers in the system detects the answer tone from the second modem (or fax) and the network gateways switch from audio mode to VBD mode. When this transitions occurs, the system switches from what may be a relatively short play-out buffer in audio mode to a relatively long play-out buffer in VBD mode. When the switch in buffer length occurs, there will be a gap in the answer tone which is received by the calling station.
For example, consider what occurs when a system is operating in audio mode with a play-out buffer of 50 ms and the system detects an answer tone and switches to a 200 ms play-out buffer. At the receiving end there will be a gap in the signal of about 150 ms. When the answering system encounters this gap it may assume that the answering system dropped off the line and it may drop off the line. It has been found that gaps even as small as 30 to 50 ms can cause a significant drop in the call success rate of 10 to 20 percent with some client devices. It is noted that it may take a voice gateway in the neighborhood of 250 ms to detect an answer tone. Thus, the gap caused by switching from audio mode to VBD mode will normally occur after the calling machine begins receiving the answer tone. It is noted that if the gap had been in the beginning part (the first 50 to 100 ms) of the answer tone, the gap would have little if any effect since the answering machine would not as yet have recognized the answer tone.
The problem addressed by the present invention, is the anomaly that occurs when a system switches from audio mode (with a short play-out buffer) to VBD mode (with a long play-out buffer).